Search engines oftentimes use the location of the user to customize the results shown on the results page. For instance, for a query of “weather”, the search engine may use the geographical location of the user to display the weather forecast based on the location context of the user.
One approach for determining the location of a user is to use positioning systems such as GPS (global positioning system). Unfortunately, this information is not available for the majority of users, as the users need to use a device with GPS and would also need to enable the search engine access to this personal location information. Another approach to determine user location is to simply ask the user to self-report the user location. While this might be accurate in the short-term, in the long-term the user might relocate to new location without updating the self-reported location. Yet another approach employed to overcome the limitations above is to consult a Reverse IP database (“RevIP”). This database contains ranges of IP addresses and their corresponding location.
Unfortunately, self-reported performance numbers of commercial RevIP databases reveal that the precision and coverage of these databases are lacking. Attempts to solve this problem exploit the structure of Internet backbone links and measure the time to reach different parts of the Internet. However, these attempts have had only limited success. Finding ways to improve these databases presents a significant challenge and a solution to which can provide a positive financial impact for companies across several industries.